#!/bin/bash

####################################################
# 使用教程：
# ./go_build.sh <go file name > <编译类型>
#
# 例如：
# ./go_build.sh 001-test.go linux
#
# 编译类型：
# linux、windows、mac（默认为mac类型）
#
# 远程调用地址：
# curl -sSL https://gitee.com/tay3223/biubiubiu/raw/master/go_build.sh
####################################################

#切割字符串，生成可执行文件的名称
NEW_NAME=$(echo "$1" | awk -F .go '{print $1}')

#创建工作目录
mkdir -p ./build

#判断第二个参数
case $2 in
linux)
    #Linux编译参数
    export CGO_ENABLED=0
    export GOOS=linux
    export GOARCH=amd64
    NEW_NAME="$NEW_NAME-linux"
    ;;
win)
    #Windows编译参数
    export CGO_ENABLED=0
    export GOOS=windows
    export GOARCH=amd64
    NEW_NAME="$NEW_NAME-win"
    ;;
windows)
    #Windows编译参数
    export CGO_ENABLED=0
    export GOOS=windows
    export GOARCH=amd64
    NEW_NAME="$NEW_NAME-win"
    ;;
mac)
    #Mac编译参数
    export CGO_ENABLED=0
    export GOOS=darwin
    export GOARCH=amd64
    NEW_NAME="$NEW_NAME-mac"
    ;;
*)
    #Mac编译参数
    export CGO_ENABLED=0
    export GOOS=darwin
    export GOARCH=amd64
    NEW_NAME="$NEW_NAME-mac"
    ;;
esac

#export CGO_ENABLED=0
#export GOOS=darwin
#export GOARCH=amd64

#开始编译
go build -o build/"$NEW_NAME" "$1"
